package nicg.st.entity;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * @author GeChen
 * @Description
 * @date 2019/11/3 23:00
 */
@Setter
@Getter
@ToString
public class Node {
    private String Name;
    private double[][] matrix;
    private double maxLamda;
    private double[] vector;
    private double weight;
    List<Node> child;
    private double ci;
    private double ri;
    ArrayList<Double> abVector;

    public Node() {
    }

    public Node(double[][] matrix, double maxLamda, double[] vector, List<Node> child) {
        this.matrix = matrix;
        this.maxLamda = maxLamda;
        this.vector = vector;
        this.child = child;
    }

	public String getName() {
		return Name;
	}

	public void setName(String name) {
		Name = name;
	}

	public double[][] getMatrix() {
		return matrix;
	}

	public void setMatrix(double[][] matrix) {
		this.matrix = matrix;
	}

	public double getMaxLamda() {
		return maxLamda;
	}

	public void setMaxLamda(double maxLamda) {
		this.maxLamda = maxLamda;
	}

	public double[] getVector() {
		return vector;
	}

	public void setVector(double[] vector) {
		this.vector = vector;
	}

	public double getWeight() {
		return weight;
	}

	public void setWeight(double weight) {
		this.weight = weight;
	}

	public List<Node> getChild() {
		return child;
	}

	public void setChild(List<Node> child) {
		this.child = child;
	}

	public double getCi() {
		return ci;
	}

	public void setCi(double ci) {
		this.ci = ci;
	}

	public double getRi() {
		return ri;
	}

	public void setRi(double ri) {
		this.ri = ri;
	}

	public ArrayList<Double> getAbVector() {
		return abVector;
	}

	public void setAbVector(ArrayList<Double> abVector) {
		this.abVector = abVector;
	}

	@Override
	public String toString() {
		return "Node [Name=" + Name + ", matrix=" + Arrays.toString(matrix)
				+ ", maxLamda=" + maxLamda + ", vector="
				+ Arrays.toString(vector) + ", weight=" + weight + ", child="
				+ child + ", ci=" + ci + ", ri=" + ri + ", abVector="
				+ abVector + "]";
	}
    
}